Embodiments of the present invention relate to a storage system, and more specifically, relate to a method and apparatus for managing a storage system.
In many applications, a host does not directly interact with a low-level storage device such as a disk, but performs data input/output (I/O) access by virtue of storage controllers. The storage controllers are responsible for performing data write and read to the memory device according to instructions from the host. In order to improve fault tolerance and provide other advantages, the storage controllers always work in a unit of a group. One controller group may include two or more controllers and perform operations as a whole. Of course, the storage controllers may also be used individually.
A storage system may comprise a plurality of storage controller groups. I/O access of the host is always performed through a specific storage controller group. Generally, one or more logical and/or physical storage volumes may be created on each physical storage device (e.g., disk). Each storage volume is associated with a storage controller group and controlled thereby. The I/O access by a host to a storage volume is implemented through a storage controller. When the hot degree and frequency of the host accessing to different storage volumes are unbalanced, one or some storage controller groups will have a too heavy work load, while other storage controller groups are in an idle state.
In order to solve this problem, the currently known manner is formulating a storage plan based on a customer's traffic application before the storage system is put into use. In this way, optimized configuration of an association relationship between a storage controller and a storage volume can be determined in advance. However, during an actual use process, the demands and characteristics of the application always vary with time, such that the previous optimized configurations become not suitable anymore. In this case, the customer has to continuously monitor the performance of the storage system to manually adjust allocation of the storage volume between storage controllers, which will increase the customer's operation load, dampen the operation efficiency, and even be unrealized in some cases.